【レポート】The Frugal Architectに沿ったコスト最適化手法が学べる「Benchmarking through cost insights: The way of the Frugal Architect」に参加しました #AWSreInvent #ARC307

【レポート】The Frugal Architectに沿ったコスト最適化手法が学べる「Benchmarking through cost insights: The way of the Frugal Architect」に参加しました #AWSreInvent #ARC307

Clock Icon2024.12.04

こんにちは!AWS事業本部のおつまみです。

今回はre:Invent2024のセッション 「Benchmarking through cost insights: The way of the Frugal Architect」 に参加してきたので、内容をご紹介します!

セッションの概要

タイトル

Benchmarking through cost insights: The way of the Frugal Architect

コスト洞察によるベンチマーキング: 質素なアーキテクトの道

概要

Does your infrastructure’s cost reflect best practices and recommended patterns? Are you using AWS services optimally while implementing robust, cost-optimized foundations? This workshop is designed to help you drive architectural improvements through cost observation. It explores how to uncover suboptimal architecture patterns, hidden failures, and noncompliant deployments by using costs to establish and visualize good baselines for foundational services and workload architectures. It demonstrates how to combine cost categories and usage data with design requirements, application profiles, and best practices to generate flexible visualizations and KPIs that empower the Frugal Architect. Join this workshop to gain expertise in creating a cost-effective architecture. You must bring your laptop to participate.

インフラのコストはベストプラクティスと推奨パターンを反映していますか? 堅牢でコスト最適化された基盤を実装しながら、AWSサービスを最適に利用していますか? 本ワークショップは、コスト観察を通じてアーキテクチャの改善を推進するためのものです。 基礎となるサービスやワークロードアーキテクチャの適切なベースラインを確立し可視化するためにコストを使用することで、最適でないアーキテクチャパターン、隠れた障害、コンプライアンスに反するデプロイメントを発見する方法を探ります。 コスト・カテゴリと使用量データを設計要件、アプリケーション・プロファイル、ベスト・プラクティスと組み合わせて、質素なアーキテクトに力を与える柔軟な可視化とKPIを生成する方法を示します。 このワークショップに参加して、費用対効果の高いアーキテクチャを作成するための専門知識を身につけましょう。 参加にはノートパソコンの持参が必要です。

スピーカー

  • Fiona Armada, Principal Solution Architect, Amazon Web Services
  • Barbara Bogdanescu, Technical Account Manager, AWS

レベル

300

セッションの内容

前提

セッションは昨年のre:Invent2023で発表された「Dr. Werner の Keynote 視聴した人、どれくらいいる?」の質問から始まりました。(このDr. Wernerのイラスト可愛いですよね。)

photo

そこで提唱された「The Frugal Architect」のおさらいです。

photo (1)

  • I.Make Cost a Non-functional Requirement. (コストを非機能要件にする)
  • II.Systems that Last Align Cost to Business. (長持ちするシステムはコストをビジネスに合わせる)
  • III.Architecting is a Series of Trade-offs. (アーキテクチャはトレードオフの連続である)
  • IV.Unobserved Systems Lead to Unknown Costs. (観測されないシステムは未知のコストにつながる)
  • V.Cost Aware Architectures Implement Cost Controls. (コスト意識のあるアーキテクチャはコストコントロールを実装する)
  • VI.Cost Optimization is Incremental. (コスト最適化は段階的である)
  • VII.Unchallenged Success Leads to Assumptions. (挑戦されない成功は思い込みにつながる)

公式サイトもあるため、各法則の詳細説明はこちらをご参考ください。
https://thefrugalarchitect.com/laws/

今回のワークショップはこの「The Frugal Architect」の則って、様々なAWSサービスを扱いながら、コスト最適化を実施していくという流れでした。

ワークショップ詳細

法則に合わせて全部で7つのLabsに分かれていました。

法則 実施すること 利用するAWSサービス
法則 I - コストを非機能要件にする このラボでは、Cloud Intelligence Dashboard Framework (CID) をデプロイして財務観測レイヤーを設定します。 Amazon Athena, AWS Glue, AWS Cost and Usage Report, Amazon QuickSight
法則 II - 持続するシステムはコストをビジネスに合わせる このラボでは、ビジネス分析情報を使用して財務データを拡張し、単位コストを計算する方法について説明します。 Amazon Athena, Amazon QuickSight
法則 III - アーキテクチャはトレードオフの連続である このラボでは、AWS Resilience Hub を利用して、アーキテクチャ上のリスクとトレードオフを理解することに重点を置いています。 AWS Resilience Hub, AWS CloudFormation, Amazon RDS
法則 IV - 観察されないシステムは未知のコストにつながる このラボでは、データ転送コストをより深く把握することで、最適ではないアーキテクチャの選択が明らかになる可能性があることを確認します。 AWS Transit Gateway, Amazon Athena, Amazon QuickSight, Amazon S3
法則 V - コストを意識したアーキテクチャはコスト管理を実装する このラボでは、AWS 予算を通じてより厳格なコスト管理を統合し、その予算を CID に組み込むことに重点を置いています。 AWS Budgets, CID
法則 VI - コスト最適化は増分的である。 このラボでは、パワーチューニングと Graviton 移行を通じて Lambda 構成を最適化する方法について説明します。 AWS Lambda, AWS CloudFormation
第 7 法則 - 揺るぎない成功は仮定につながる このラボでは、Amazon RDS Aurora クラスターの Graviton への制御されたゼロダウンタイム移行を実行することで、Graviton の使用法を拡張します。 Amazon RDS

時間の都合上、全てのLabはできないとのことで選択して実施をしていきます。

photo (3)

私は興味があった、「法則 I - コストを非機能要件にする」を実施しました。

法則 I - コストを非機能要件にする

まずはコスト管理および最適化ツールの調査と導入から始まります。
目的としては、以下の3点です。

  • 可視性の向上: AWS 環境内でコストがどこでどのように使われているかを把握する。
  • 無駄の特定: 未使用、アイドル状態、または誤って割り当てられたリソースを特定する。
  • ベストプラクティスを実装: AWS ネイティブツールを活用して支出を最適化する。

そこで今回は、AWS ネイティブツールであるCUDOSダッシュボードを構築しました。
アーキテクチャはこちらになります。

7478f85665a7-20241107

参考:Cloud Intelligence Dashboards Framework

CUDOSダッシュボードはCloudFormationで作成したことはあったのですが、今回のハンズオンではCloudShellからコマンドラインツール(cid-cmd)と呼ばれるコマンドを実行して作成しました。

cid-cmdコマンドで作成できるダッシュボードやそのデモについては、こちらをご参考ください。
https://pypi.org/project/cid-cmd/

cid-cmdコマンドを実行すると、ダッシュボードを作成するために必要なソースのS3バケットやAthena、Glueクローラーの設定、Quicksightの有効化、作成するダッシュボードなどを選択式で選んできます。選択するだけなので、各サービスを行き来したり、コードを打つことはありませんでした。

image

今回はCUDOSダッシュボード v5を選択しました。

image (1)

作成したダッシュボードはこちらになります。

CUDOS_Dashboard_v5

ダッシュボードには以下のような主要な指標が含まれていました。

  • 前月の請求書:
  • 前月の総アカウント数:
  • 前月の合計サービス数:
  • 前月の支出額が最も大きいリージョン:
  • 償却支出額
  • 前月の償却支出:
  • 前月の節約と割引:

また上部のバーでさまざまなタブを切り替えることができます。
個人的に良いなと思ったのは、コンピューティング、ストレージ、Amazon S3、データベースなどの各サービスについて、最適化のための推奨事項を取得できることでした。

image

このCUDOSダッシュボードをもとにLab2以降、可視化したコストから分析・チューニングを行なっていく流れでした。

おわりに

今回のセッションで、The Frugal Architectに沿ったコスト最適化手法の中からコストを可視化する方法についてを学ぶ事ができました!

AWS側でネイティブツールが用意されていて、簡単に実装できるので便利だなと思いました。
今回はLabs1しか実施できなかったので、ワークショップが公開された場合は全部やってみたいなと思いました。

最後までお読みいただきありがとうございました!
どなたかのお役に立てれば幸いです。

以上、おつまみ(@AWS11077)でした!

参考

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.